The field of telecommunications has long been operated on the basis of circuit switching principles to provide voice communications. The typical telecommunications digital network for voice communications, provides a continuous bit rate service that is concatenated as n.times.64 Kb/s channels. Telephone station sets as well as other terminal apparatus are connected at network ports or end points via telephone lines. The network ports usually include codec equipped line interface circuits for converting analog signals, received from the telephone line, to digital signals for transmission through the telecommunications digital network and for converting digital signals, received from the telecommunications digital network, to analog signals, for reception via the telephone line. Voice signals, are usually digitally encoded into pulse code modulated (PCM) signals, in accordance with a standard, either A law or .mu. law. Any communication with any one of the ports is conducted by means of digital signals within assigned timeslots interleaved in transmit and receive frames in a periodic frame format. These may be referred to as a pair of transmit and receive time division multiplexed (TDM) channels. The transmit and receive channel pair are usually simply referred to as a channel. The channels are time division multiplexed with other channels in the periodically occurring frames, which themselves may be time division multiplexed with other periodically occurring frames, for the transport of information signals, such as PCM signals, between synchronous signal sources and destinations. In this example the telecommunications digital network is based on a synchronous time multiplex (STM) hierarchy which establishes a common operating frequency and phase structure between the end points or ports. This is commonly referred to as circuit switching. Information is exchanged between telephone call specified end points by the use of the TDM channels inherent to one or more circuit switches within the STM network. These circuit switches typically include both space and time switching elements in any of various combinations. More than one channel may be assigned to a communication circuit but this is only required for a special service which requires some multiple of the 64 Kb/s bandwidth. The primary characteristic of circuit switching is that once one or more channels are assigned to a given communication circuit, to provide a service, the channel assignment is reserved for the exclusive use of that service continuously throughout the duration of the service provision. In circuit switching a typical voice telephone call is allocated one path or channel for the duration of the call, however synchronous signal sources are not limited to voice band signals and may include a wide range of synchronous sources, for example from voice through to video. Two examples of TDM switches, commercially supplied by the assignee for use in telephone exchanges, are known by the trademarks DMS 10 and DMS 100.
Some time ago, packet switching was introduced for improving the efficient transport of data signals. In contrast to the steady repetitive nature of PCM signals, data signals for the most part are of a bursty or asynchronous nature. Thus to accommodate the efficient transmission of data signals they are arranged into packets of any convenient length along with a header which specifies a destination. After a packet has been assembled, a high speed transmission path is allocated, only for a time sufficient to transport the packet of data toward its destination. During the transmission, the packet is in sole possession of the transmission path. After the packet is transported the transmission path is available for the transport of another packet, possibly from a different source. The event of the transmission of a at least one packet of data from a point of origin to a point of destination is termed a data call, however the number of data packets transmitted in a data call is generally unlimited. During any one data call, call management is rationalized by assigning a virtual channel to the call. The virtual channel is always maintained for the length of the data call, although the actual allocation of the transmission path occurs only after a packet of data is ready for transmission and only for the time actually used for its transmission. The virtual channel has various benefits associated with call management and billing, and provides a vehicle for defining the bandwidth and grade of service assigned to the call. Some or many packets may eventually be transported as determined by the occurrences of data at the source, however as if to mimic synchronous switching, any one data call is associated with its virtual channel throughout the duration of the data call. The time during which the transmission path is actually occupied is a function of size of a packet divided by the bandwidth of the transmission path. Although digitized voice can be transported in this manner, the wide variances of delay caused by the operating characteristics of a practical packet network has demonstrated that packet switching is not a practical alternative to circuit switching for providing voice telephone services. Intolerable, interrupted, delayed and out of sequenced reception of voice signal transmissions are common occurrences from time to time in a typical packet system, particularly during higher traffic periods. An example of a packet switch, commercially supplied by the assignee for use in data exchanges, is known by the trademark SL 10.
The evolution of packet systems toward functionality as broad band carriers of information of synchronous origin is exemplified in a paper by A Thomas et al, titled Asynchronous Time-Division Techniques: An Experimental Packet Network Integrating Video communication, which was published at the 1984 International Switching Symposium, May 7-11 in Florence Italy. Another example was published in a 1987 IEEE paper by Jean-Pierre Coudreuse and Michel Serval, titled Prelude: An Asynchronous Time-division Switched Network.
More recently, a broadband communications standard for supporting a variety of both synchronous and asynchronous communication requirements has been widely adapted, and is now referred to as the asynchronous transfer mode (ATM) of telecommunications. The recommended standards are defined by the ATM Forum and are available from several publishers including Prentice Hall of Englwood Cliffs, N.J. 07632, under the title ATM User-Network Interface Specification Version 3.0 (ISBN 0-13-225863-3). Currently networks operable in the ATM standard are becoming available for the transport of asynchronous (bursty) signals, as well as synchronous (periodic) signals. One commercially available product is sold by the assignee with the trademark Magellan. Networks operable in the ATM standard are usually termed ATM systems or ATM networks.
The operation of ATM systems resembles some aspects of packet switching but conforms to a more rigid specification for transmission and switching. An ATM system performs transfers of information in fixed sized units, referred to in ATM jargon as cells. Each cell is like a container or a packet of a predetermined fixed size, which includes a group of 48 octets or bytes available for transporting information of user origin toward a destination. This information is often referred to as being bearer information and an octet or byte of bearer information is often referred to as a bearer octet. As the group of 48 octets are available for bearer information they are often referred to as an information field or payload portion of the cell. Each payload portion is preceded by a header field of 5 octets, which includes information pertaining to transmission and switching management of the cell. The 5 octet header field is often referred to as overhead. Regardless of whether the information signal source is bursty or periodic the standard cell format is used to transfer the bearer information in ATM.
Transmission and switching of cells within ATM networks is independent of the application bit rate, and hence ATM supports applications with a diversity of source rates, including isochronous and asynchronous sources.
The ATM protocol architecture specifies a cell transfer technique that is common to all services, and an adaptation process by which user generated information is written into and read from the fixed cell format. This is often referred to as being mapped to and from the fixed cell format. Adaptation processes are service specific, as packetization of higher layer information, passed to and from the ATM cell layer, may represent either continuous bit rate (isochronous) information or variable bit rate (bursty) information. These require different techniques to reconstruct the information for exchange between end points or ports. Connections are established either with fixed bandwidth, or with variable bandwidth that is assigned or statistically shared amongst a number of connections. For a isochronous connection, the information is transported as a short, asynchronous burst (cell) with an effective 8 KHz repetition rate that has the transport bandwidth reserved for the duration of the connection. Any bandwidth, remaining on the loop may be statistically shared by data or messaging connections.
An ATM switching facility must at least provide for:
header address translation to determine a route through a switching element; PA1 cell transport between an input port and one or more output ports; and PA1 output scheduling for both isochronous and asynchronous connections, wherein an isochronous connection is given priority to minimize transport delays. PA1 a multiplexer for receiving data packets at any of a plurality of input ports and multiplexing data packets into a common incoming data stream; a controller being responsive to information contained in headers of data packets in the common incoming data stream, for generating queue control information, for generating outgoing headers for data packets destined for any of a plurality of outport ports, and for abstracting timeslot switching information; a queuing buffer for receiving the common incoming data stream and being responsive to the queue control information for queuing the payload bytes of each data packet and for subsequently selecting and transferring queued payload bytes of each data packet into an outgoing data stream; a timeslot switch including means being responsive to the timeslot switching information for abstracting a payload of synchronous data bytes from the outgoing data stream, for reordering a sequence of the abstracted data bytes, and for reinserting the synchronous data bytes into the outgoing data stream; and a distributor for directing the outgoing headers along with the respective packet payloads to those of the plurality of output ports to which the payloads are destined. PA1 a multiplexer for receiving data packets at any of a plurality of input ports and multiplexing data packets into a common incoming data stream; a controller being responsive to information contained in headers of data packets in the common incoming data stream, for generating queue control information, for generating outgoing headers for data packets destined for any of a plurality of outport ports, and for abstracting timeslot switching information; a queuing buffer for receiving the common incoming data stream and being responsive to the queue control information for queuing the payload bytes of each data packet and for subsequently selecting and transferring queued payload bytes of each data packet into an outgoing data stream; a timeslot switch including means being responsive to the timeslot switching information for abstracting a plurality of payloads of synchronous data bytes from the outgoing data stream, for reordering a sequence of the abstracted data bytes, and for inserting the synchronous data bytes as a delayed plurality of payloads into the outgoing data stream; and a distributor for directing the outgoing headers along with the respective packet payloads to those of the plurality of output ports to which the payloads are destined. PA1 multiplexing the data packets received at the input ports into a common incoming data stream; PA1 in response to information contained in headers of data packets in the common incoming data stream, generating queue information, and an outgoing headers stream, and in response to a synchronous data indication within the information contained in the headers in the common incoming data stream, generating timeslot switching information; PA1 receiving and buffering the common incoming data stream, and in response to the queue information, selecting data packet payloads from the buffered data stream and transferring the data packet payloads in the order of selection into an outgoing data stream; PA1 in response to the timeslot switching information, reordering the bytes of a payload of synchronous data in the outgoing data stream, whereby timeslot switching is effected within the payload; and PA1 assembling fixed length outgoing data packets from the outgoing headers stream and the outgoing data stream, and directing the outgoing data packets to those of the plurality of output data ports to which the packets are destined.
In an ATM switching facility, an incoming cell's header is examined by the switching element in order that it is able to direct the cell to the destined output port or output ports. Since the arrival rate of cells is not deterministic (as in the STM), there are occurrences of two or more cells arriving coincidentally and destined for the same output port. Such occurrence would result in an internal collision and cell losses unless cell buffers are used within the switching element. The cell buffers queue the cells from a multiplicity of sources for subsequent orderly transport to their destination ports. Any given cell will appear to transit the switching element with a varying delay determined by the number of arrivals that preceded the given cell's arrival. The delay through the switch is statistical rather than deterministic. Consequently, in order to minimize delay in telephone conversations, the isochronous voice traffic is typically put into a different queue from the asynchronous data traffic, that is voice queue with a higher transport priority than a data queue.
By contrast, in STM the incoming information always arrives at exactly the same point in time relative to a periodic frame that carries multiple channels. Hence, a synchronous timeslot interchanger uses a deterministic means to transfer data from a fixed incoming time location to another fixed outgoing time location, by assigning a fixed delay to an incoming channel such that the information will be synchronously transferred at the correct time, into an outgoing channel.
In general, most telecommunications switches include a central switching facility that is used to interconnect peripheral equipment. The peripheral equipment provides physical access via telephone lines to telephone sets and any other forms of terminal equipment. The term telephone line is intended herein to be taken as any means by which a terminal equipment is connected to a communications network and includes but is not limited to, radio links, fibre optic lines, coaxial cables, twisted copper pairs and pole mounted open conductors. Interconnect loops provide either non-blocking or blocking access between the peripheral equipment and the central switching facility. Traditionally, the interconnect loop is a digital synchronous TDM loop connected between the switching facility and the peripheral equipment wherein a channel conveys bearer information exchanged during a call or session. These digital TDM loops typically provide frames of 24 or 32 channels, or multiples thereof, within a 125 microsecond frame period. The aggregation of the total number of channels available on all loops represents the switching capacity of the switching facility. The contents of any incoming channel may be switched to any outgoing channel with a granularity of a single octet. The single bearer octet has no routing information associated with it. In STM, the octet's position within the TDM frame inherently identifies its source and its destination. This is sometimes referred to as DS0 switching. In DS0 switching, a byte or octet is switched from its timeslot in an incoming frame to a predetermined timeslot in an outgoing frame.
If the STM interconnect loop is replaced with an ATM interconnect loop the user generated information no longer has a predetermined fixed timing reference. Furthermore, the granularity of switching of bearer information is broader and includes all 48 bytes of cell. The user generated information requires an address to be transported with it in order for the ATM switch to establish the intended connection. One or more digital voice channels may be contained within the information field of an ATM cell. An ATM switching facility used for switching digital voice channels must re-establish a 125 microsecond periodic frame structure in order to exchange octet connections between the ATM switching facility and STM peripheral equipment.
One method for transmitting a telephone conversation in the ATM is to map encoded voice sample octet occurrences as they occur at the standard 125 microsecond rate into the payload portion of a cell until the cell is full. The cell is then transferred to its header defined destination where the octets are retrieved at the 125 microsecond rate. The functions of mapping to and from the cell each cause a one way transport delay of (48.times.125 .mu.s)=6 milliseconds. This is in contrast to delays of less than 2 milliseconds at most in an STM system, however this is of little consequence in typical two party conversations, providing that telephone set hybrid circuits function optimally. This much longer delay, introduced by the ATM switch, makes echo of a given energy much more noticeable than it would be using an STM switch. In the case of three or more party conference calls, and particularly if one or more of the hybrid circuit operations is less than ideal, the delay results in an obnoxious echo. Present echo canceller technology does not seem to offer a practical solution for a satisfactory eradicating the echo in multiparty conference calls.
A simple solution to the problem of undue delay is to commit a whole cell to the transport of only one bearer octet of not more than a few samples. This means that the first octet or only a few of the octets at the beginning of the payload portion of each cell are used. As the cell is not held until all 48 octets are mapped before transport, cells are transported more frequently and the delay is reduced to an extent that the echo is more tolerable. This is an effective but inefficient solution which wastes large amounts of bandwidth, in the form of partially filled cells. Furthermore such an ATM system when primarily used for voice telephony is not a practical alternative to an STM system.
A less attractive solution involves the loading of one or two whole STM frame occurrences into a cell for transport, every 125 .mu.s or 250 .mu.s, thereby avoiding undue delay. However this requires that the source peripheral equipment and the destination peripheral equipment be interfaced with the ATM facility via respective STM facilities, which themselves perform switching functions similar to central office functions. This is an expensive alternative which in a high traffic voice environment is tantamount to relegating the ATM facility to tandem switching.
Neither of these solutions provides an efficient interface between the ATM and the STM and hence the ATM has tended to be limited in its applications to data and high bandwidth services, where if there is any voice traffic, it is insignificant.
In a typical TDM telephone switching facility, the core of the switching system consists of a call controller connected intimately with time and space switching elements of a switching matrix. Lines and trunks are coupled in groups to the switching matrix, while signalling and supervision concerned with the setting up and tearing down of telephone calls is collected and distributed via group controllers. More particularly each of the group controllers is subservient to the call controller and waits at the call controller's discretion, as it were, to communicate therewith. The primary function of the call controller is that of directing the functions of the space and time switching elements of the STM switching matrix and diagnosing any malfunctions therein. Consequently, the physical structure and operating instructions which characterize the call controller, are optimized in relation to the specific structure of the switching matrix. The advances in the technology of computers and processors are usually time consuming and even prohibitively difficult to adapt into the call controllers of existing switching systems. Any changes in the call controller can have far reaching and often unpredicted deleterious effects because of the intimate relationship between the call controller and the STM switching matrix.